package org.simple.framework.data.annotation;

import org.simple.framework.data.query.Expression;
import org.simple.framework.data.query.Match;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 项目名称：simple-framework
 * 类名称：QueryProperty
 * 类描述：QueryProperty
 * 创建时间：2018/9/6
 *
 * @author sisyphus   (E-mail:1620657419@qq.com)
 * @version v1.0
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface QueryProperty {

    /**
     * 字段
     *
     * @return
     */
    String column();

    /**
     * 查询类型值
     *
     * @return
     */
    Expression expression() default Expression.EQ;

    Match match() default Match.ANYWHERE;

    /**
     * or关系时，关系字段
     *
     * @return
     */
    String group() default "";

}
